'<%@ page pageEncoding="UTF-8"%>';
/**==================================在线考试系统-->系统用户管理===========================*/

/**集中声明该页AJAX请求的URL*/
var url_queryPage_paper='${queryPage}';
var url_paperShow_paper='${paperShow}';
var url_allowReExaming_paper='${allowReExaming}';
var url_deletePaper_paper='${deletePaper}';
var url_savePaper_paper='${savePaper}';
var url_modifyRegularScore_paper='${modifyRegularScore}';

/**初始化该页的UI控件*/
$(function(){
	// 视图
	initGrid_paper();
	initDialog_paper();
	initBtn_studentPaper_1();
	// 事件
	onClick_paper();
});

/**-----------------------------------视图-----------------------------------*/

/**初始化主数据表格*/
function initGrid_paper(){
	// 定义要显示的列
	var columns = new Array(
		//{field:'id', title:'试卷编号', width:50},
        {field:'account', title:'学号', width:100},
        {field:'name', title:'姓名', width:80},
        {field:'className', title:'班级', width:100},
        {field:'choiceScore', title:'选择题分数', width:60},
        {field:'questionScore', title:'问答题分数', width:60},
        {field:'regularScore', title:'平时成绩', width:60},
        {field:'totalScore', title:'总成绩', width:60},
        {field:'paperState', title:'试卷状态', width:50, formatter:function(value,row,index){
        	if(value == 0){
        		return "已注册";
        	}
        	if(value == 1){
        		return "考试中";
        	}
        	if(value == 2){
        		return "重考";
        	}
        	if(value == 3){
        		return "已交卷";
        	}
        	if(value == 4){
        		return "意外退出";
        	}
        }},
        {field:'scoreLevel', title:'成绩等级', width:50, formatter:function(value,row,index){
        	if(value == 5){
        		return '不及格';
        	}
        	if(value == 4){
        		return '及格';
        	}
        	if(value == 3){
        		return '中等';
        	}
        	if(value == 2){
        		return '良好';
        	}
        	if(value == 1){
        		return '优秀';
        	}
        }},
        {field:'createTime', title:'注册时间', width:120},
        {field:'updateTime', title:'更新时间', width:120}
	);
	// 进行初始化
	initGrid_1('dg_studentPaper', url_queryPage_paper, columns, '#toolbar_studentPaper');
}

/**初始化对话框*/
function initDialog_paper(){
	$('#dlg_studentPaper').dialog({
	    closed: true,
	    modal: true,
	    toolbar:[{
			text:'保存',
			iconCls:'icon-save',
			handler:savePaper
		},{
			text:'清空',
			iconCls:'icon-undo'
		}]
	});
}

/**初始化对话框上的按钮*/
function initBtn_studentPaper_1(){
	// 保存
	$('#btn_studentPaper_1 a:eq(0)').linkbutton({
		iconCls: 'icon-save'
	});
	// 取消
	$('#btn_studentPaper_1 a:eq(1)').linkbutton({
		iconCls: 'icon-cancel'
	});
}

/**-----------------------------------事件-----------------------------------*/

/**页面的所有单击事件*/
function onClick_paper(){
	// 查询
	$('#toolbar_studentPaper a:eq(5)').click(function(){
		// 获取查询参数
		var account = $('#account').textbox('getText');
		var className = $('#className').textbox('getText');
		// 重新载入表格
		reloadGrid('dg_studentPaper',{
			'account' : account,
			'className' : className
		});
	});
	
	// 重置
	$('#toolbar_studentPaper a:eq(6)').click(function(){
		// 清空工具栏上的表单
		$('#className').textbox('setValue','').textbox('setText','');
		$('#account').textbox('setValue','').textbox('setText','');
		reloadGrid('dg_studentPaper',{});
	});
	
	// 刷新
	$('#toolbar_studentPaper a:eq(4)').click(function(){
		// 清空工具栏上的表单
		$('#className').textbox('setValue','').textbox('setText','');
		$('#account').textbox('setValue','').textbox('setText','');
		reloadGrid('dg_studentPaper',{});
	});
	
	// 允许重考
	$('#toolbar_studentPaper a:eq(2)').click(function(){
		allowReExaming();
	});
	
	// 删除
	$('#toolbar_studentPaper a:eq(3)').click(function(){
		deletePaper();
	});
	
	// 改卷
	$('#toolbar_studentPaper a:eq(0)').click(function(){
		markingPaper();
	});
	
	// 修改平时成绩
	$('#toolbar_studentPaper a:eq(1)').click(function(){
		modifyRegularScore();
	});
	
	// 保存平时成绩
	$('#btn_studentPaper_1 a:eq(0)').click(function(){
		saveRegularScore();
	});
	
	// 取消
	$('#btn_studentPaper_1 a:eq(1)').click(function(){
		$('#dlg_studentPaper_1').dialog('close');
	});
}

/**-----------------------------------行为-----------------------------------*/

/**允许考生重考*/
function allowReExaming(){
	var row = $('#dg_studentPaper').datagrid('getSelected');
	if(row){
		// 判断试卷的状态
		var paperState = row.paperState;
		if(paperState != 4 && paperState != 3){
			$.messager.alert('提示','该试卷未提交！');
			return;
		}
		$.messager.confirm('提示', '确认允许【' + row.name + '】重考?', function(r){
			if(r){
				// 发送重考的请求
				$.ajax({
					type : 'post',
					url : url_allowReExaming_paper,
					data : {
						'id' : row.id
					},
					dataType : 'json',
					success : function(data){
						if(data.success){
							// 弹出成功提示
							$.messager.show({
								title:"提示",
								msg:"操作成功！",
								timeout:3000
							});
							reloadGrid('dg_studentPaper');
						} else{
							$.messager.alert("失败", data.message + "<br>" + data.data);
						}
					}
				});
			}
		});
	} else{
		$.messager.alert('提示','请选择一条记录！');
	}
}

/**删除试卷：正在考试中的试卷不能删除*/
function deletePaper(){
	var row = $('#dg_studentPaper').datagrid('getSelected');
	if(row){
		// 判断试卷的状态
		var paperState = row.paperState;
		if(paperState == 1){
			$.messager.alert('提示','正在考试中的试卷不能删除！');
			return;
		}
		$.messager.confirm('提示', '确认删除【' + row.name + '】的试卷?', function(r){
			if(r){
				// 发送删除的请求
				$.ajax({
					type : 'post',
					url : url_deletePaper_paper,
					data : {
						'paperId' : row.id
					},
					dataType : 'json',
					success : function(data){
						if(data.success){
							// 弹出成功提示
							$.messager.show({
								title:"提示",
								msg:"删除试卷成功！",
								timeout:3000
							});
							reloadGrid('dg_studentPaper');
						} else{
							$.messager.alert("失败", data.message + "<br>" + data.data);
						}
					}
				});
			}
		});
	} else{
		$.messager.alert('提示','请选择要删除的记录！');
	}
}

/**改卷*/
function markingPaper(){
	var row = $('#dg_studentPaper').datagrid('getSelected');
	if(row){
		// 判断试卷的状态
		var paperState = row.paperState;
		if(paperState != 3){
			$.messager.alert('提示','该试卷未提交！');
			return;
		}
		// 获取试卷的编号
		var paperId = row.id;
		// 设置对话框界面的URL
		$('#dlg_studentPaper').dialog({'href':url_paperShow_paper + "?paperId=" + paperId});
		// 打开对话框
		openDialog('dlg_studentPaper', '改卷  ------  试卷编号：' + row.id);
	} else{
		$.messager.alert('提示','请选择一条记录！');
	}
}

/**提交改卷结果*/
function savePaper(){
	// 表单校验
	if(!$('#paper_questions').form('validate')){
		return;
	}
	// 获取表单的分数，计算总分数
	var scores = $.parseJSON("[" + serializeForm($('#paper_questions')).score + "]");
	// 计算总分
	var questionScore = 0;
	for(var i = 0; i < scores.length; i++){
		questionScore += scores[i];
	}
	// 获得当前试卷的编号
	var paperId = serializeForm($('#paper_questions')).paperId;
	//修改这张试卷的问答题分数
	$.ajax({
		type : 'post',
		url : url_savePaper_paper,
		data : {
			'questionScore' : questionScore,
			'id' : paperId
		},
		dataType : 'json',
		success : function(data){
			if(data.success){
				// 关闭对话框
				closeDialog('dlg_studentPaper');
				// 弹出成功提示
				$.messager.show({
					title:"提示",
					msg:"改卷成功！",
					timeout:3000
				});
				// 重新载入表格
				reloadGrid('dg_studentPaper');
			} else{
				$.messager.alert("失败", data.message + "<br>" + data.data);
			}
		}
	});
}

/**打开修改平时成绩的对话框*/
function modifyRegularScore(){
	var row = $('#dg_studentPaper').datagrid('getSelected');
	if(row){
		// 把form表单中的值全部清空
		$('#dlg_studentPaper_1 .show label:nth-child(1)').next().textbox('setValue','');
		$('#dlg_studentPaper_1 .show label:nth-child(1)').next().textbox('setText','');
		// 加载表单的默认值
		$('#dlg_studentPaper_1 form').form('load',{
			'id':row.id,
			'name':row.name,
			'regularScore':row.regularScore
		});
		// 将唯一键文本框设置为只读
		$('#dlg_studentPaper_1 .show input:eq(0)').textbox('disable');
		// 使保存按钮可用
		$('#btn_studentPaper_1 a:eq(0)').linkbutton('enable');
		// 打开对话框
		$('#dlg_studentPaper_1').dialog('open').dialog('setTitle','修改平时成绩');
	} else{
		$.messager.alert('提示','请选择一条记录！');
	}
}

/**保存平时成绩*/
function saveRegularScore(){
	// 将唯一键文本框设置为读写，防止传到后台为空值
	$('#dlg_studentPaper_1 .show input:eq(0)').textbox('enable');
	// 提交表单
	$('#dlg_studentPaper_1 form').form('submit', {
		url : url_modifyRegularScore_paper,
		onSubmit : function(){
			// 使保存按钮不可用
			$('#btn_studentPaper_1 a:eq(0)').linkbutton('disable');
			var isValid = $(this).form('validate');
			if (!isValid) {
				// 使保存按钮可用
				$('#btn_studentPaper_1 a:eq(0)').linkbutton('enable');
			}
			return isValid;
		},
		success : function(data){
			var $data = $.parseJSON(data);
			if($data.success){
				$('#dlg_studentPaper_1').dialog('close');
				// 弹出成功提示
				$.messager.show({
					title:"提示",
					msg:"修改平时成绩成功！",
					timeout:3000
				});
				reloadGrid('dg_studentPaper');
			} else{
				$('#btn_studentPaper_1 a:eq(0)').linkbutton('enable');
				$.messager.alert("失败", $data.message + "<br>" + $data.data);
			}
		}
	});
}
